var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
    if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
    return c > 3 && r && Object.defineProperty(target, key, r), r;
};
import { jsx as _jsx } from "react/jsx-runtime";
import { PureComponent } from "react";
import { DataGrid } from "devextreme-react/data-grid";
import DevGridDefaultHoc from "./DefaultHoc";
import { MultipleTapHoc, MultipleCheckBoxHoc, RangeTapHoc, } from "./MultipleHoc";
import { GroupTapHoc } from "./GroupHoc";
/**
 * ## 基于DevExpress DataGrid进行的二次封装组件
 * ~~~js
 * import { DevGrid } from '@/cpas-ui';
 * ~~~
 * [DataGrid连接](https://js.devexpress.com/Documentation/ApiReference/UI_Components/dxDataGrid/)
 *
 * ### 介绍
 * 1. <DevGrid.Default/> : 封装默认通用配置，提供表格通用功能的基础组件。
 * 2. <DevGrid.DevRangeTapHoc/> : 提供范围划选功能的表格控件，支持ctrl , shift
 * 3. <DevGrid.DevGridMultipleTapHoc/> : 单击单元格选择行组件
 * 4. <DevGrid.DevGridMultipleCheckBoxHoc/> : checkbox + 划选模式的组合
 * 5. <DevGrid.DevGroupTapHoc/> : 提供默认分组的表格控件
 */
export class DevGrid extends PureComponent {
    static defaultProps = {
        isRemote: false,
        ContextMenu: [],
    };
    static MultipleTap;
    static MultipleCheckBox;
    static RangeTap;
    static GroupTap;
    static Default;
}
let DevGridDefault = class DevGridDefault extends PureComponent {
    dom = document.createElement("div");
    constructor(props) {
        super(props);
        this.dom = document.createElement("div");
    }
    render() {
        return _jsx(DataGrid, { ...this.props });
    }
};
DevGridDefault = __decorate([
    DevGridDefaultHoc
], DevGridDefault);
export { DevGridDefault };
let DevRangeTapHoc = class DevRangeTapHoc extends DevGridDefault {
    constructor(props) {
        super(props);
    }
    render() {
        return super.render();
    }
};
DevRangeTapHoc = __decorate([
    RangeTapHoc
], DevRangeTapHoc);
export { DevRangeTapHoc };
let DevGridMultipleTapHoc = class DevGridMultipleTapHoc extends DevGridDefault {
    constructor(props) {
        super(props);
    }
    render() {
        return super.render();
    }
};
DevGridMultipleTapHoc = __decorate([
    MultipleTapHoc
], DevGridMultipleTapHoc);
export { DevGridMultipleTapHoc };
let DevGridMultipleCheckBoxHoc = class DevGridMultipleCheckBoxHoc extends DevGridDefault {
    constructor(props) {
        super(props);
    }
    render() {
        return super.render();
    }
};
DevGridMultipleCheckBoxHoc = __decorate([
    RangeTapHoc,
    MultipleCheckBoxHoc
], DevGridMultipleCheckBoxHoc);
export { DevGridMultipleCheckBoxHoc };
let DevGroupTapHoc = class DevGroupTapHoc extends DevGridDefault {
    constructor(props) {
        super(props);
    }
    render() {
        return super.render();
    }
};
DevGroupTapHoc = __decorate([
    GroupTapHoc
], DevGroupTapHoc);
export { DevGroupTapHoc };
export default DevGrid;
